﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MetaCollection.ContentService.Http
{
	/// <summary>
	/// 2xx Success
	/// ------------------------------------
	/// The action was successfully received, understood, and accepted.
	/// This class of status code indicates that the client's request was successfully received, understood, and accepted.	/// </summary>
	public enum SuccessStatus
	{
		None = 0,
		/// <summary>
		/// Standard response for successful HTTP requests. The actual response will depend on the request method used. In
		/// a GET request, the response will contain an entity corresponding to the requested resource. In a POST request the
		/// response will contain an entity describing or containing the result of the action.
		/// </summary>
		Ok = 200,
		/// <summary>
		/// The request has been fulfilled and resulted in a new resource being created.
		/// </summary>
		Created = 201,
		/// <summary>
		/// The request has been accepted for processing, but the processing has not been completed. The request might or might
		/// not eventually be acted upon, as it might be disallowed when processing actually takes place.
		/// </summary>
		Accepted = 202,
		/// <summary>
		/// Non-Authoritative Information (since HTTP/1.1)
		/// The server successfully processed the request, but is returning information that may be from another source.
		/// </summary>
		NonAuthoritative = 203,
		/// <summary>
		/// The server successfully processed the request, but is not returning any content.
		/// </summary>
		NoContent = 204,
		/// <summary>
		/// The server successfully processed the request, but is not returning any content. Unlike a 204 response,
		/// this response requires that the requester reset the document view.
		/// </summary>
		ResetContent = 205,
		/// <summary>
		/// The server is delivering only part of the resource due to a range header sent by the client. This is used by
		/// tools like wget to enable resuming of interrupted downloads, or split a download into multiple simultaneous streams.
		/// </summary>
		PartialContent = 206,
		/// <summary>
		/// Multi-Status (WebDAV) (RFC 2518 )
		/// The message body that follows is an XML message and can contain a number of separate response codes,
		/// depending on how many sub-requests were made.
		/// </summary>
		[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Multi")]
		MultiStatus = 207
	}
}
